package com.javacode2018.chat03.demo4;

import com.javacode2018.chat03.demo4.model.UserModel;
import org.apache.ibatis.executor.result.DefaultResultContext;
import org.apache.ibatis.session.ResultContext;
import org.apache.ibatis.session.ResultHandler;

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class MyResultHandler implements ResultHandler<UserModel> {


    @Override
    public void handleResult(ResultContext<? extends UserModel> context){

        //将context参数转换为DefaultResultContext对象
        DefaultResultContext<UserModel> defaultResultContext = (DefaultResultContext<UserModel>) context;
        log.info("{}", defaultResultContext.getResultObject());
        //遍历到第二条之后停止
        if (defaultResultContext.getResultCount() == 2) {
            //调用stop方法停止遍历，stop方法会更新内部的一个标志，置为停止遍历
            defaultResultContext.stop();
        }

    }
}
